package com.wiz.web.vo.to;

import java.util.List;

import org.apache.commons.lang3.StringUtils;

import com.wiz.common.util.PRUtil;
import com.wiz.web.vo.BaseObject;

/**
 * 会员 包含基本信息+密码信息+帐户信息+限额信息
 * @author Hakeny
 */
public class MemberTO extends BaseObject {
	private static final long serialVersionUID = -2129571714049300687L;

	private String memberId;// 会员ID
	private String memberName;// 会员名
	private String phoneNum;// 手机
	private Integer isCheckLicensePlate;//是否校验车牌：1是，0否
	private String licensePlate;// 车牌
	private String birthDay;// 生日
	private String idCard;// 身份证
	private String fuellingPassword;// 加油密码,存储规则md5(MEMBER_ID+实际加油密码)
	private String openId;
	private String memo;
	
	private String prBinaryIds;//油品高低位
	private List<PRConfigTO> prConfigList;
	private Integer isCheck;// 是否校验加油密码：1是，0否
	private Integer isCheckStationAdminCard;//1是，0否
	private Integer isAllFue;//是否全站可加油 1：是
	private String fueStations;//可加油站点字符串，形如10001,10002
	private Integer isAllCha;//是否全站可充值 1：是
	private String chaStations;//可充值站点字符串，形如10001,10002

	private Double amount;// 余额
	private Double frozenAmount;// 冻结金额
	private Double totalChargedAmount;// 总充值金额
	private Double totalPaidAmount;// 总消费金额
	private Integer point;// 积分

	private String companyId;// 企业id
	private String companyName;// 企业名
	private Integer companyType; //企业类型：1散户，2余额，3总账
	private String memberAccountId;//金额变化关联账户ID
	private Integer memberType;// 会员类型 1企业子帐号，2企业总账号
	private String hqId;// 总部id
	private String hqName;// 总部名
	private Integer hqMemberGradeId;// 会员等级ID
	private String hqMemberGradeName;// 会员等级名
	private Integer amountPoint;//汽油消费积分(每元积分)
	private Double saleAmount;//汽油优惠金额(每升优惠)，单位元
	private Integer dieselPoint;//柴油消费积分(每元积分)
	private Double dieselSaleAmount;//柴油优惠金额(每升优惠)，单位元
	private Integer usePoint;//正在生效消费积分(每元积分)
	private Double useSaleAmount;//正在生效优惠金额(每升优惠)，单位元
	private String stationId;// 站点ID
	private String stationName;// 站点名
	private Integer status;// 状态 1正常，0冻结，-1注销
	private String createdTime;// 创建时间

	private Double memberTimeUpLimit;// 会员单笔最大限额,单位元
	private Double memberDailyUpLimit;// 会员单日最大限额,单位元
	private Double memberMonthUpLimit;// 会员单月最大限额,单位元
	private Double memberCreditLine;// 会员透支额度,单位元
	private Double totalDailyAmount;// 当日消费总金额,单位元
	private Double totalMonthAmount;// 当月消费总金额,单位元
	
	private String cardNo;//逻辑卡号
	private String phyCardNo;//物理卡号
	private String verificationCode;//卡校验码
	
	public void toPRList(){
		if(StringUtils.isNotBlank(prBinaryIds)){
			this.prConfigList = PRUtil.toPRConfigList(prBinaryIds);
		}
	}

	public String getMemberId() {
		return memberId;
	}

	public void setMemberId(String memberId) {
		this.memberId = memberId;
	}

	public String getMemberName() {
		return memberName;
	}

	public void setMemberName(String memberName) {
		this.memberName = memberName;
	}

	public String getPhoneNum() {
		return phoneNum;
	}

	public void setPhoneNum(String phoneNum) {
		this.phoneNum = phoneNum;
	}

	public String getLicensePlate() {
		return licensePlate;
	}

	public void setLicensePlate(String licensePlate) {
		this.licensePlate = licensePlate;
	}

	public String getBirthDay() {
		return birthDay;
	}

	public void setBirthDay(String birthDay) {
		this.birthDay = birthDay;
	}

	public String getIdCard() {
		return idCard;
	}

	public void setIdCard(String idCard) {
		this.idCard = idCard;
	}

	public Integer getIsCheck() {
		return isCheck;
	}

	public void setIsCheck(Integer isCheck) {
		this.isCheck = isCheck;
	}

	public String getFuellingPassword() {
		return fuellingPassword;
	}

	public void setFuellingPassword(String fuellingPassword) {
		this.fuellingPassword = fuellingPassword;
	}

	public Double getAmount() {
		return amount;
	}

	public void setAmount(Double amount) {
		this.amount = amount;
	}

	public Double getFrozenAmount() {
		return frozenAmount;
	}

	public void setFrozenAmount(Double frozenAmount) {
		this.frozenAmount = frozenAmount;
	}

	public Double getTotalChargedAmount() {
		return totalChargedAmount;
	}

	public void setTotalChargedAmount(Double totalChargedAmount) {
		this.totalChargedAmount = totalChargedAmount;
	}

	public Double getTotalPaidAmount() {
		return totalPaidAmount;
	}

	public void setTotalPaidAmount(Double totalPaidAmount) {
		this.totalPaidAmount = totalPaidAmount;
	}

	public Integer getPoint() {
		return point;
	}

	public void setPoint(Integer point) {
		this.point = point;
	}

	public String getCompanyId() {
		return companyId;
	}

	public void setCompanyId(String companyId) {
		this.companyId = companyId;
	}

	public String getCompanyName() {
		return companyName;
	}

	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}

	public Integer getMemberType() {
		return memberType;
	}

	public void setMemberType(Integer memberType) {
		this.memberType = memberType;
	}

	public String getHqId() {
		return hqId;
	}

	public void setHqId(String hqId) {
		this.hqId = hqId;
	}

	public String getHqName() {
		return hqName;
	}

	public void setHqName(String hqName) {
		this.hqName = hqName;
	}

	public Integer getHqMemberGradeId() {
		return hqMemberGradeId;
	}

	public void setHqMemberGradeId(Integer hqMemberGradeId) {
		this.hqMemberGradeId = hqMemberGradeId;
	}

	public String getHqMemberGradeName() {
		return hqMemberGradeName;
	}

	public void setHqMemberGradeName(String hqMemberGradeName) {
		this.hqMemberGradeName = hqMemberGradeName;
	}

	public String getStationId() {
		return stationId;
	}

	public void setStationId(String stationId) {
		this.stationId = stationId;
	}

	public String getStationName() {
		return stationName;
	}

	public void setStationName(String stationName) {
		this.stationName = stationName;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public String getCreatedTime() {
		return createdTime;
	}

	public void setCreatedTime(String createdTime) {
		this.createdTime = createdTime;
	}

	public Double getMemberTimeUpLimit() {
		return memberTimeUpLimit;
	}

	public void setMemberTimeUpLimit(Double memberTimeUpLimit) {
		this.memberTimeUpLimit = memberTimeUpLimit;
	}

	public Double getMemberDailyUpLimit() {
		return memberDailyUpLimit;
	}

	public void setMemberDailyUpLimit(Double memberDailyUpLimit) {
		this.memberDailyUpLimit = memberDailyUpLimit;
	}

	public Double getMemberMonthUpLimit() {
		return memberMonthUpLimit;
	}

	public void setMemberMonthUpLimit(Double memberMonthUpLimit) {
		this.memberMonthUpLimit = memberMonthUpLimit;
	}

	public Double getMemberCreditLine() {
		return memberCreditLine;
	}

	public void setMemberCreditLine(Double memberCreditLine) {
		this.memberCreditLine = memberCreditLine;
	}

	public Double getTotalDailyAmount() {
		return totalDailyAmount;
	}

	public void setTotalDailyAmount(Double totalDailyAmount) {
		this.totalDailyAmount = totalDailyAmount;
	}

	public Double getTotalMonthAmount() {
		return totalMonthAmount;
	}

	public void setTotalMonthAmount(Double totalMonthAmount) {
		this.totalMonthAmount = totalMonthAmount;
	}

	public Integer getCompanyType() {
		return companyType;
	}

	public void setCompanyType(Integer companyType) {
		this.companyType = companyType;
	}

	public String getMemberAccountId() {
		return memberAccountId;
	}

	public void setMemberAccountId(String memberAccountId) {
		this.memberAccountId = memberAccountId;
	}

	public String getCardNo() {
		return cardNo;
	}

	public void setCardNo(String cardNo) {
		this.cardNo = cardNo;
	}

	public Integer getIsCheckStationAdminCard() {
		return isCheckStationAdminCard;
	}

	public void setIsCheckStationAdminCard(Integer isCheckStationAdminCard) {
		this.isCheckStationAdminCard = isCheckStationAdminCard;
	}

	public String getPhyCardNo() {
		return phyCardNo;
	}

	public void setPhyCardNo(String phyCardNo) {
		this.phyCardNo = phyCardNo;
	}

	public String getVerificationCode() {
		return verificationCode;
	}

	public void setVerificationCode(String verificationCode) {
		this.verificationCode = verificationCode;
	}

	public String getOpenId() {
		return openId;
	}

	public void setOpenId(String openId) {
		this.openId = openId;
	}

	public String getMemo() {
		return memo;
	}

	public void setMemo(String memo) {
		this.memo = memo;
	}

	public Integer getAmountPoint() {
		return amountPoint;
	}

	public void setAmountPoint(Integer amountPoint) {
		this.amountPoint = amountPoint;
	}

	public Double getSaleAmount() {
		return saleAmount;
	}

	public void setSaleAmount(Double saleAmount) {
		this.saleAmount = saleAmount;
	}

	public Integer getDieselPoint() {
		return dieselPoint;
	}

	public void setDieselPoint(Integer dieselPoint) {
		this.dieselPoint = dieselPoint;
	}

	public Double getDieselSaleAmount() {
		return dieselSaleAmount;
	}

	public void setDieselSaleAmount(Double dieselSaleAmount) {
		this.dieselSaleAmount = dieselSaleAmount;
	}

	public Integer getUsePoint() {
		return usePoint;
	}

	public void setUsePoint(Integer usePoint) {
		this.usePoint = usePoint;
	}

	public Double getUseSaleAmount() {
		return useSaleAmount;
	}

	public void setUseSaleAmount(Double useSaleAmount) {
		this.useSaleAmount = useSaleAmount;
	}

	public Integer getIsCheckLicensePlate() {
		return isCheckLicensePlate;
	}

	public void setIsCheckLicensePlate(Integer isCheckLicensePlate) {
		this.isCheckLicensePlate = isCheckLicensePlate;
	}

	public String getPrBinaryIds() {
		return prBinaryIds;
	}

	public void setPrBinaryIds(String prBinaryIds) {
		this.prBinaryIds = prBinaryIds;
	}

	public Integer getIsAllFue() {
		return isAllFue;
	}

	public void setIsAllFue(Integer isAllFue) {
		this.isAllFue = isAllFue;
	}

	public String getFueStations() {
		return fueStations;
	}

	public void setFueStations(String fueStations) {
		this.fueStations = fueStations;
	}

	public Integer getIsAllCha() {
		return isAllCha;
	}

	public void setIsAllCha(Integer isAllCha) {
		this.isAllCha = isAllCha;
	}

	public String getChaStations() {
		return chaStations;
	}

	public void setChaStations(String chaStations) {
		this.chaStations = chaStations;
	}

	public List<PRConfigTO> getPrConfigList() {
		return prConfigList;
	}

	public void setPrConfigList(List<PRConfigTO> prConfigList) {
		this.prConfigList = prConfigList;
	}
	
}
